
(function () {
	$("include").each(function(i){
		var url=$(this).attr("src");
		var e=$(this);
//		if(a=="head.html"){
//			$(this).load(a,null,function(){
//				//初始化导航栏
//				$(".nav>.nav2>div").each(function(i){
//					var a=$(this).attr("onclick").split("=")[1].split("'")[1];
//					var b=window.location.href;
//					if(b.indexOf(a)>0){
//						$(this).attr("class","active");
//					}
//				});	
//			});
//		}else{
			//$(this).load(a);
			$.ajax({
			    url:url,
			    type:'GET', //GET
			    async:false,    //或false,是否异步
			    success:function(data,textStatus,jqXHR){
			    	e.html(data);
			    },
			    error:function(xhr,textStatus){
			        console.log(textStatus);
			    }
			})
//			$.get(url, function(data){
//		        //alert("Data Loaded: " + data);
//				e.html(data);
//			});
//		}
	});
   //var iconHtml=' <link rel="icon" href="img/favicon.ico" type="image/x-icon"/>';
    //$("head").append(iconHtml);
})();

/**/
(function () {
	var loading='<div id="loading" style="position: fixed;background-color: rgba(0,0,0,0.5);width: 100%;height: 100%;z-index: 99;top: 0;display:flex;align-items:center;justify-content:center;color: black;font-size: 1.5rem;">'+
							''+
						'</div>';

	
	//全局ajax控制
	var _ajax = $.ajax;
	$.ajax = function(opt) {
		var _opt = opt;
		if (opt.noloading) {
			console.log("opt.noloading");
		} else {
			_opt = $.extend(opt, {
				beforeSend : function(XMLHttpRequest) {
					//console.log("beforeSend");
					$("html").append(loading);
				},
				complete : function(XMLHttpRequest, textStatus) {
				//	console.log("complete");
					$("#loading").remove();
				}
			});
		}
		return _ajax(_opt);
	};
	
})();



/**全局弹出框控制 */
$(document).on("show.bs.modal", ".modal", function(){
    $(this).draggable();
    //$(this).draggable("disable"); //取消拖拽
    // 防止出现滚动条，出现的话，你会把滚动条一起拖着走的
    //$(this).css("overflow-y", "scroll");
});

Date.prototype.format = function(format) {
	var date = {
		"M+" : this.getMonth() + 1,
		"d+" : this.getDate(),
		"h+" : this.getHours(),
		"m+" : this.getMinutes(),
		"s+" : this.getSeconds(),
		"q+" : Math.floor((this.getMonth() + 3) / 3),
		"S+" : this.getMilliseconds()
	};
	if (/(y+)/i.test(format)) {
		format = format.replace(RegExp.$1, (this.getFullYear() + '')
				.substr(4 - RegExp.$1.length));
	}
	for ( var k in date) {
		if (new RegExp("(" + k + ")").test(format)) {
			format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? date[k]
					: ("00" + date[k]).substr(("" + date[k]).length));
		}
	}
	return format;
}

function time_yyyyMMdd_hhmmss(time) {
	return new Date(time).format("yyyy-MM-dd hh:mm:ss");
}
function time_yyyyMMdd_hhmm(time) {
	return new Date(time).format("yyyy-MM-dd hh:mm");
}
function time_yyyyMMdd(time) {
	return new Date(time).format("yyyy-MM-dd");
}
function time_yyyyMM(time) {
	return new Date(time).format("yyyy-MM");
}
function time_yyyy(time) {
	return new Date(time).format("yyyy");
}
function time_MM(time) {
	return new Date(time).format("MM");
}
function time_dd(time) {
	return new Date(time).format("dd");
}
/*
 * 获取当前时间毫秒数
 * */
function timeMillisecond(){
	return new Date().getTime();
}
/**
 * 字符串转时间
 * stringTime 例：2014-07-10 10:21:12
 */
function timeToNumber(stringTime){
	var str = stringTime.replace(/-/g,"/");
	var num =  Date.parse(new Date(str));
	return num;
}
/*
 * 获取当前年
 * */
function getYear(){
	var date = new Date();
	return date .getFullYear(); //获取完整的年份(4位)
}
/*
 * 获取当前月
 * */
function getMonth(){
	var date = new Date(); 
	//date .getMonth()获取当前月份(0-11,0代表1月)
	return date .getMonth()+1;//1-12
}
/*
 * 获取当前月 双数
 * */
function getMonthDouble(){
	var date = new Date();
	var month=date .getMonth()+1;
	if(month<=9){
		month="0"+month;
	}
	return month; //获取当前月份(01-12)
}

/*
 * 获取当前日
 * */
function getDate(){
	var date = new Date();
	return date.getDate(); //获取当前月份(0-11,0代表1月)
}

/**
 * 检查字符串是否包含特殊字符 lichao
 * 
 * @param str
 * @returns {Boolean}
 */
function checkSpecialChar(str) {
	var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~！@#￥……&*（）——|{}【】‘；：”“'。，、？]");
	if (str != "" && str != null) {
		if (pattern.test(str)) {
			return false;
		} else {
			return true;
		}
	}else
	{
		return true;
	}
}
    
/**
 * 检查字符串是否包含关键字 lichao
 * 
 * @param str
 */
function checkKeyWords(str){
	var text = ',」,「,null,boolean,int,long,short,byte,float,double,char,class,interface,if,else,for,switch,default,break,continue,return,public,protect,default,private,final,static,void,strictfp,abstract,transient,synchronized,volatile,native,package,import,throw,throws,extends,new,true,false,null,goto,const,this,implements,super,instanceof,try,volatile,while,';
    if(text.indexOf(','+str.toLowerCase().trim()+',') >= 0||str.indexOf('null')>=0){
    	return true;
    }else
    {
    	return false;
    }
}
/**
 * 检查查询条件，开始时间不能晚于结束时间
 * @param start
 * @param end
 * @returns {Boolean}
 */
function checkSEDate(start,end){
	if(start!=""&&end!=""){
		if(start>end){
			return true;
		}
	}
	return false;
}

/**
 * 检查对象值是否为空
 * jqObj:jq对象
 */
function checkNull(jqObj){
	if(!jqObj.val()){
		jqObj.focus();
		return true;
	}
}

/**
 * 保留3位小数，并且四舍五入
 * @param val
 * @returns
 */
function getDouble3(val){
	if((val+"").indexOf(".")>0){
		var n=Number((val+"").substring(0,(val+"").indexOf(".")+5));
		n=Math.round(n*1000)/1000;
		return n;
	}else{
		return val;
	}
}



/*
 * 获取url参数
 * */
function getUrlParam(name) {
  var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
  var r = window.location.search.substr(1).match(reg);
  if (r != null) return unescape(r[2]);
  return null;
}
/*
 * 往session里添加值
 * */
function setSessionValue(name,value){
	var data={};
	data.name=name;
	data.value=value;
	$.ajax({
      type: 'post',
      async:false,
      url:'/common/setSessionValue',
      data:data,
      success: function (data) {
      	//alert(JSON.stringify(data));
      	
      },
      error: function (error) {
        alert(JSON.stringify(error));
      }
    })
}
/*
 * 获取session里的某一个值
 * */
function getSessionValue(name){
	var data={};
	data.name=name;
	var result="";
	$.ajax({
      url:'/common/getSessionValue',
      data:data,
      async:false,
      success: function (data) {
      	//alert(JSON.stringify(data));
    	//data=JSON.parse(data);
      	result=data;
      },
      error: function (error) {
        alert(JSON.stringify(error));
      }
    })
    return result;
}





/*
 * ajax跨域，向任意地址发送get请求，该方法为同步
 * */
function sendGetRequest(url,callBack){
	var data={};
	data.url=url;
	$.ajax({
		type: 'get',
		url:'/common/sendGetRequest',
		async: false,
		data:data,
		success: function (data) {
			callBack(data);
		},
		error: function (error) {
			alert(JSON.stringify(error));
		}
	})
}



//用于生成uuid
function uuid() {
	function S4() {
	    return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
	}
	var result=(S4()+S4()+S4()+S4()+S4()+S4()+S4()+S4());
    return result;
}

function uuid16() {
	function S4() {
	    return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
	}
	var result=(S4()+S4()+S4()+S4());
    return result;
}


//手机号格式检查
function checkPhone(value) {
	//	if (!value.match(/^(((1[0-9]{1}[0-9]{1})|159|153|183|172|186)+\d{8})$/)) {
	//		return false;
	//	}
	//	return true;
		if(checkNumber(value)&&value.length<=15){
			return true;
		}else{
			return false;
		}
	}
	
	//经度检查，整数部分为0-180小数部分为0到6位
	function checkLongitude(longitude){
		//经度，整数部分为0-180小数部分为0到6位
		var longreg = /^(\-|\+)?(((\d|[1-9]\d|1[0-7]\d|0{1,3})\.\d{0,6})|(\d|[1-9]\d|1[0-7]\d|0{1,3})|180\.0{0,6}|180)$/;
		if (!longreg.test(longitude)) {
			//alert('经度整数部分为0-180,小数部分为0到6位!');
			return false;
		}
		return true;
	}
	//纬度检查,整数部分为0-90小数部分为0到6位
	function checkLatitude(latitude){
		//纬度,整数部分为0-90小数部分为0到6位
		var latreg = /^(\-|\+)?([0-8]?\d{1}\.\d{0,6}|90\.0{0,6}|[0-8]?\d{1}|90)$/;
		if (!latreg.test(latitude)) {
			//alert('纬度整数部分为0-90,小数部分为0到6位!');
			return false;
		}
		return true;
	}
	//double类型检测
	function checkDouble(val) { 
		var re = /^\d+(?=\.{0,1}\d+$|$)/; 
		   return re.test(val);
	}
	//Number类型检测
	function checkNumber(val) { 
		var re = /^[0-9]*[1-9][0-9]*$/;　　　 //正整数 
		   return re.test(val);
	}
	/*
	 * 获取url参数值 http://url?param=value
	 * */
	function getQueryString(name) { 
		var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); 
		var r = window.location.search.substr(1).match(reg); 
		if (r != null) return unescape(r[2]); return null; 
	} 

	function listSql(sql,callBackFun,ifAsync){
		var data={};
		data.sql=sql;
		var async=true;
		if(ifAsync==false){
			async=false;
		}
		$.ajax({
			url:'/common/listSql',
			type:"post",
			async:async,
			data:data,
			success: function (data) {
				callBackFun(data);
			},
			error: function (error) {
				console.log(JSON.stringify(error));
			}
		})
	}

	function executeSql(sql,callBackFun,ifAsync){
		var data={};
		data.sql=sql;
		var async=true;
		if(ifAsync==false){
			async=false;
		}
		$.ajax({
			url:'/common/executeSql',
			type:"post",
			async:async,
			data:data,
			success: function (data) {
				callBackFun(data);
			},
			error: function (error) {
				console.log(JSON.stringify(error));
			}
		});
	}